package com.cskaoyan.javase.basic._9control;

/**
 * break意为"打断，中断"，是常用的循环控制关键字。
 * 使用场景：
 * break并不仅仅能用在循环中，它在switch中也可以使用，break就有了两个使用场景：
 *      1.switch语句中某个case分支，用于结束整个switch。
 *      2.循环语句中。用于结束当前层次循环！
 * 注意：除开上面两种语境不能使用break，编译不通过
 *
 * 语义/作用：
 * 针对break的使用场景不同，作用也是不同的：
 * 在switch中使用，表示结束当前switch语句。
 * 在循环中使用，表示结束当前循环。
 *  注意：若有嵌套循环，表示结束当前层次的循环，和外层没有关系
 *
 *  如果有需要结束外层循环，就需要使用"标签label"的语法
 *  标签就相当于给某个循环层级起一个名字：
 *  标签名: for();
 *  实际开发中，嵌套循环不多见，也不建议使用
 *  标签就是更少见的语法
 *  而且标签类似于goto，尽量不要使用
 *
 * @since 15:01
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo {
    public static void main(String[] args) {
        // break;
        for (int i = 0; i < 5; i++) {
            if (i == 3) {
                break;
            }
            System.out.println("我喜欢吃🍉!");
        }
        System.out.println("-------------------------");
        label1:
        for (int i = 0; i < 5; i++) {
            label2:
            for (int j = 0; j < 3; j++) {
                if (j == 2) {
                    break label1;
                }
                System.out.print("￥");
            }
            System.out.println();
        }
    }
}
